home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / m4-1_0_3.lha / m4-1.0.3 / examples / trace.m4 < prev    next >
Text File  |  1991-07-08  |  524b  |  31 lines

  1. divert(-1)
  2.  
  3. # move(from, to)
  4. define(`move', `Move one disk from `$1' to `$2'.
  5. ')
  6.  
  7. # _hanoi (cnt, from, to, aux)
  8. define(`_hanoi', `ifelse(eval(`$1'<=1), 1, `move($2, $3)',
  9. `_hanoi(decr($1), $2, $4, $3)move($2, $3)_hanoi(decr($1), $4, $3, $2)')')
  10.  
  11. # hanoi (cnt)
  12. define(`hanoi', `_hanoi(`$1', source, destination, auxilliary)')
  13. divert`'dnl
  14.  
  15. # Debugmode t
  16. debugmode(`t')
  17. hanoi(2)
  18.  
  19. # Debugmode taeq
  20. debugmode(`taeq')
  21. hanoi(2)
  22.  
  23. # Debugmode OFF
  24. debugmode
  25. hanoi(2)
  26.  
  27. # Debugmode ae
  28. debugmode(`ae')
  29. traceon(`move', `_hanoi')
  30. hanoi(2)
  31.